/**
 * 模型关联文件
 * 用于导出所有模型并定义模型之间的关联关系
 */
const User = require('./User')
const Category = require('./Category')
const Bill = require('./Bill')

// 用户与分类的关联关系（用户可以创建自定义分类）
User.hasMany(Category, { foreignKey: 'user_id', as: 'categories' })
Category.belongsTo(User, { foreignKey: 'user_id', as: 'user' })

// 用户与账单的关联关系
User.hasMany(Bill, { foreignKey: 'user_id', as: 'bills' })
Bill.belongsTo(User, { foreignKey: 'user_id', as: 'user' })

// 分类与账单的关联关系
Category.hasMany(Bill, { foreignKey: 'category_id', as: 'bills' })
Bill.belongsTo(Category, { foreignKey: 'category_id', as: 'category' })

module.exports = {
	User,
	Category,
	Bill
}
